/*
 * Copyright (c) Facebook, Inc. and its affiliates.
 * All rights reserved.
 *
 * This source code is licensed under the license found in the
 * LICENSE file in the root directory of this source tree.
 */

import FacebookGamingServices
import Foundation
import UIKit

enum CustomUpdateContentObjects {

  // swiftlint:disable force_unwrapping
  static var validID = "12345"
  static var validMessage = "Hello"
  static var gifMedia = FacebookGIF(withUrl: URL(string: "www.test.com")!)
  static var invalidGifMedia = FacebookGIF(withUrl: URL(string: "")!)
  @available(iOS 13.0, *)
  static var validImage = UIImage(
    named: "customColorSilhouette",
    in: Bundle(for: CustomUpdateGraphAPIContentRemoteTests.self),
    with: nil
  )!

  @available(iOS 13.0, *)
  static let imageContentInvalidMessage = CustomUpdateContentImage(message: "", image: validImage)
  static let imageContentInvalidImage = CustomUpdateContentImage(message: validMessage, image: UIImage())
  @available(iOS 13.0, *)
  static let imageContentValid = CustomUpdateContentImage(message: validMessage, image: validImage)
  static let mediaContentInvalidMessage = CustomUpdateContentMedia(message: "", media: gifMedia)
  static let mediaContentInvalidMedia = CustomUpdateContentMedia(message: validMessage, media: invalidGifMedia)
  static let mediaContentValid = CustomUpdateContentMedia(message: validMessage, media: gifMedia)
}

enum CustomUpdateContentObjectsParameters {
  static let contextKEY = "context_token_id"
  static let textKey = "text"
  static let mediaKey = "media"
  static let imageKey = "image"

  static let contextValue = "12345"
  static let textValue = "{\"default\":\"Hello\",\"localizations\":{}}"
  static let mediaValue = "{\"gif\":{\"url\":\"www.test.com\"}}"
  static let imageValue = ""  // swiftlint:disable:this line_length
}
